import glob
import os
from flask import Blueprint, render_template

api_blueprint = Blueprint('api',__name__,url_prefix="/api")   #创建父蓝图

# 获取当前包的路径
package_dir = os.path.dirname(os.path.abspath(__file__))

# 获取目录名（即当前脚本所在的目录名称）
package_dir_name = os.path.basename(package_dir)


# 遍历包内的所有.py文件
for filename in glob.glob(os.path.join(package_dir, "*.py")):
    # 忽略__init__.py文件
    if filename.endswith('__init__.py'):
        continue

        # 导入模块
    module_name = os.path.splitext(os.path.basename(filename))[0]  #获取本目录的*.py文件

    module_=__import__(f'{__name__}.{module_name}', fromlist=['*'])  #动态导入.py文件,并返回这个包
    #print(module_.abc) 获取包内数据

    print(f"导入蓝图{__name__}.{module_name}")

    # package_dir_name+'_'+module_name    这个就是约定模式 蓝图对象的名称 admin_index
    #根据getattr函数  获取这个包对象内的 admin_index 注册到父蓝图

    api_blueprint.register_blueprint(getattr(module_, package_dir_name+'_'+module_name))  # 将蓝图注册到父蓝图
